Connect LabAmazon Connect study

Routing

Routing criteria, expiry, and a preferred agent

Learn it in 5 minutes

HTML

About five minutes of reading

Set routing criteria does nothing until Transfer to queue, and it does nothing inside an agent queue.

The block puts an ordered list of steps on a contact of any channel. Each step is one or more requirements. You can use the block in an inbound flow, a customer queue flow, a transfer-to-agent flow, or a transfer-to-queue flow. After every timed step expires, Connect offers the contact to the longest available agent who has that queue on a routing profile.

A step can name preferred agents by user ID, up to 10. The contact stays limited to those agents until the timer ends, even if an agent is offline, busy, in a custom status, or deleted. After a Customer Profiles lookup you can point a step at $.Customer.CalculatedAttributes._last_agent_id.

  • An AND step can use up to eight attributes. An OR step can use up to three conditions, and only when you set the criteria dynamically.
  • NOT is also dynamic only. OR sits at the top. AND can sit inside OR.
  • Each step needs a timer. The last step may be set never to expire.
  • A very short DurationInSeconds can let ordinary queue routing compete with the proficiency step.

Number on this page: Preferred 10. Maximum agents in one preferred-agent step

Visual

HTML
Routing criteria, expiry, and a preferred agent

Picture from this room.

Worked example

HTML
  1. Set. Manually or from Lambda JSON.
  2. Transfer. A standard queue activates it.
  3. Expire. Move to the next step.
  4. Fallback. Longest available agent on the profile.

What usually goes wrong: Expecting the criteria to follow the contact into an agent queue. The block page says it does not take effect there.

Quiz

HTML

Question 1

Which term matches this description? A number on a queue inside a routing profile. A lower number is served first.

Show the cited answer

A number on a queue inside a routing profile. A lower number is served first. The term is Priority.

How Connect Customer uses routing profiles - Amazon Connect Customer AWS docs. last checked 2026-10

Question 2

Which term matches this description? The queue selected by Set working queue. Transfer to queue uses it.

Show the cited answer

The queue selected by Set working queue. Transfer to queue uses it. The term is Working queue.

Flow block in Connect Customer: Transfer to queue - Amazon Connect Customer AWS docs. last checked 2026-10

Question 3

Which term matches this description? A one-click transfer target: a user, a queue, or an external number.

Show the cited answer

A one-click transfer target: a user, a queue, or an external number. The term is Quick connect.

Create quick connects in Connect Customer - Amazon Connect Customer AWS docs. last checked 2026-10

Sources

HTML

Flow block in Connect Customer: Set routing criteria - Amazon Connect Customer AWS docs. last checked 2026-10

The prose is a study paraphrase. The link is the source of the facts.

Ecosystem

HTML

Glossary

  • Working queue The queue selected by Set working queue. Transfer to queue uses it.
  • Routing profile The list of queues an agent can receive, with channel concurrency, priority, and delay.
  • Priority A number on a queue inside a routing profile. A lower number is served first.
  • Delay Seconds a contact must wait before an agent with that profile can receive it.

Mind map

Open the Routing mind map

Sister technologies

Priority and delay decide who is offered the contact. The queue name does not.

Config and troubleshooting

Expecting the criteria to follow the contact into an agent queue. The block page says it does not take effect there.

Priority and delay live on the routing profile queue config, not on the queue name. Lower priority is offered first. Delay holds that queue back.

HoursOfOperation Queue RoutingProfile

CloudFormation study snippet
Resources:
  OfficeHours:
    Type: AWS::Connect::HoursOfOperation
    Properties:
      InstanceArn: !GetAtt CampusInstance.Arn
      Name: OfficeHours
      TimeZone: America/Los_Angeles
      Config:
        - Day: MONDAY
          StartTime: { Hours: 8, Minutes: 0 }
          EndTime: { Hours: 18, Minutes: 0 }
  OrdersQueue:
    Type: AWS::Connect::Queue
    Properties:
      InstanceArn: !GetAtt CampusInstance.Arn
      Name: Orders
      HoursOfOperationArn: !GetAtt OfficeHours.HoursOfOperationArn
  BasicProfile:
    Type: AWS::Connect::RoutingProfile
    Properties:
      InstanceArn: !GetAtt CampusInstance.Arn
      Name: Basic
      DefaultOutboundQueueArn: !GetAtt OrdersQueue.QueueArn
      MediaConcurrencies:
        - Channel: VOICE
          Concurrency: 1
      QueueConfigs:
        - QueueReference: { QueueArn: !GetAtt OrdersQueue.QueueArn, Channel: VOICE }
          Priority: 1
          Delay: 0

Integration map

Join records on ContactId. The integration map room lists the seams.

Cross-platform bridges

A CUCM calling search space is not a routing profile, but the profile is the closest idea of 'who can receive what'. A partition is not a Connect object. A UCCX CSQ and a UCCE skill group map to a queue. Precision steps map to routing criteria. A script, an Architect flow, and an Avaya vector map to a contact flow.

Open the mapping room

Future hooks

Hooks you can adopt later: EventBridge contact events, the CTR stream, agent events, Kinesis Video, Customer Profiles events, Cases, Show view, data tables, External Tool, and the flow language JSON in your pipeline. Live Sync and Agentic CX are the 2026 hooks for guided and agentic experiences.

Sources and go deeper

sources.json