Marqeta auth controls API

The auth controls API from Marqeta — 4 operation(s) for auth controls.

Operations 8

GET /authcontrols Lists all global auth control exceptions for the program #
POST /authcontrols Creates an auth control exception #
GET /authcontrols/exemptmids Lists all auth control exempted MIDs for the program #
POST /authcontrols/exemptmids Creates an auth control for exempting MIDs #
GET /authcontrols/exemptmids/{token} Returns a specific auth control exemptmids #
PUT /authcontrols/exemptmids/{token} Updates the status an auth control exemptmids #
GET /authcontrols/{token} Returns a specific auth control exception #
PUT /authcontrols/{token} Updates an auth control exception #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/marqeta-auth-controls-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

marqeta-auth-controls-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: support@marqeta.com
    name: Marqeta
  description: Marqeta's Core API endpoints, conveniently annotated to enable code generation (including SDKs), test cases, and documentation. Currently in beta.
  termsOfService: https://www.marqeta.com/api-terms
  title: Core accepted countries auth controls API
  version: 3.0.39
servers:
- url: /v3
security:
- mqAppAndAccessToken: []
tags:
- name: auth controls
paths:
  /authcontrols:
    get:
      operationId: getAuthcontrols
      parameters:
      - description: Card product token. Use "null" to get auth controls that are not associated with any card product.
        explode: true
        in: query
        name: card_product
        required: false
        schema:
          type: string
        style: form
      - description: User token. Use "null" to get auth controls that are not associated with any user.
        explode: true
        in: query
        name: user
        required: false
        schema:
          type: string
        style: form
      - description: Number of items to retrieve. Count can be between 1 - 10 items.
        explode: true
        in: query
        name: count
        required: false
        schema:
          default: 5
          format: int32
          type: integer
        style: form
      - description: Indicates from what row to start returning data.
        explode: true
        in: query
        name: start_index
        required: false
        schema:
          default: 0
          format: int32
          type: integer
        style: form
      - description: Comma-delimited list of fields to return (e.g. field_1,field_2,..). Leave blank to return all fields.
        explode: true
        in: query
        name: fields
        required: false
        schema:
          type: string
        style: form
      - description: Field by which to sort the returned items. Use any field in the model, or system fields lastModifiedTime or createdTime.
        explode: true
        in: query
        name: sort_by
        required: false
        schema:
          default: -lastModifiedTime
          type: string
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthControlListResponse'
          description: Success
        '400':
          content: {}
          description: Bad request
        '500':
          content: {}
          description: Server error
      summary: Lists all global auth control exceptions for the program
      tags:
      - auth controls
    post:
      operationId: postAuthcontrols
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/auth_control_request'
        description: Auth control object
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/auth_control_response'
          description: Created
        '400':
          content: {}
          description: Bad request
        '409':
          content: {}
          description: Token already associated with a different payload
        '500':
          content: {}
          description: Server error
      summary: Creates an auth control exception
      tags:
      - auth controls
  /authcontrols/exemptmids:
    get:
      operationId: getAuthcontrolsExemptmids
      parameters:
      - description: Card product token. Use "null" to get auth controls that are not associated with any card product.
        explode: true
        in: query
        name: card_product
        required: false
        schema:
          type: string
        style: form
      - description: User token. Use "null" to get auth controls that are not associated with any user.
        explode: true
        in: query
        name: user
        required: false
        schema:
          type: string
        style: form
      - description: Number of items to retrieve. Count can be between 1 - 10 items.
        explode: true
        in: query
        name: count
        required: false
        schema:
          default: 5
          format: int32
          type: integer
        style: form
      - description: Indicates from what row to start returning data.
        explode: true
        in: query
        name: start_index
        required: false
        schema:
          default: 0
          format: int32
          type: integer
        style: form
      - description: Comma-delimited list of fields to return (e.g. field_1,field_2,..). Leave blank to return all fields.
        explode: true
        in: query
        name: fields
        required: false
        schema:
          type: string
        style: form
      - description: Field by which to sort the returned items. Use any field in the model, or system fields lastModifiedTime or createdTime.
        explode: true
        in: query
        name: sort_by
        required: false
        schema:
          default: -lastModifiedTime
          type: string
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthControlExemptMidsListResponse'
          description: Success
        '400':
          content: {}
          description: Bad request
        '500':
          content: {}
          description: Server error
      summary: Lists all auth control exempted MIDs for the program
      tags:
      - auth controls
    post:
      operationId: postAuthcontrolsExemptmids
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/auth_control_exempt_mids_request'
        description: Auth control exempt MID object
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/auth_control_exempt_mids_response'
          description: Created
        '400':
          content: {}
          description: Bad request
        '409':
          content: {}
          description: Token already associated with a different payload
        '500':
          content: {}
          description: Server error
      summary: Creates an auth control for exempting MIDs
      tags:
      - auth controls
  /authcontrols/exemptmids/{token}:
    get:
      operationId: getAuthcontrolsExemptmidsToken
      parameters:
      - description: Auth control token
        explode: false
        in: path
        name: token
        required: true
        schema:
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/auth_control_exempt_mids_response'
          description: Success
        '400':
          content: {}
          description: Bad request
        '404':
          content: {}
          description: Auth control exception MIDs not found
        '500':
          content: {}
          description: Server error
      summary: Returns a specific auth control exemptmids
      tags:
      - auth controls
    put:
      operationId: putAuthcontrolsExemptmidsToken
      parameters:
      - description: Auth control token
        explode: false
        in: path
        name: token
        required: true
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/auth_control_exempt_mids_update_request'
        required: false
      responses:
        '204':
          content: {}
          description: Success
        '400':
          content: {}
          description: Bad request
        '500':
          content: {}
          description: Server error
      summary: Updates the status an auth control exemptmids
      tags:
      - auth controls
  /authcontrols/{token}:
    get:
      operationId: getAuthcontrolsToken
      parameters:
      - description: Auth control token
        explode: false
        in: path
        name: token
        required: true
        schema:
          type: string
        style: simple
      - description: Comma-delimited list of fields to return (e.g. field_1,field_2,..). Leave blank to return all fields.
        explode: true
        in: query
        name: fields
        required: false
        schema:
          type: string
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/auth_control_response'
          description: Success
        '400':
          content: {}
          description: Bad request
        '404':
          content: {}
          description: Auth control not found
        '500':
          content: {}
          description: Server error
      summary: Returns a specific auth control exception
      tags:
      - auth controls
    put:
      operationId: putAuthcontrolsToken
      parameters:
      - description: Auth control token
        explode: false
        in: path
        name: token
        required: true
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/auth_control_update_request'
        description: Auth control object
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/auth_control_response'
          description: Success
        '400':
          content: {}
          description: Bad request
        '500':
          content: {}
          description: Server error
      summary: Updates an auth control exception
      tags:
      - auth controls
components:
  schemas:
    merchant_scope:
      description: 'Defines the group of merchants to which the velocity control applies.


        Populate no more than one field of the `merchant_scope` object.

        If no fields are populated, the velocity control applies to all merchants.'
      properties:
        mcc:
          description: 'Merchant Category Code (MCC).

            Identifies the type of products or services provided by the merchant.


            Enter a value to control spending on a particular type of product or service.'
          maxLength: 4
          minLength: 1
          type: string
        mcc_group:
          description: 'Token identifying a group of MCCs.

            Enter a value to control spending on a group of product or service types.


            Send a `GET` request to `/mccgroups` to retrieve MCC group tokens.'
          maxLength: 36
          minLength: 1
          type: string
        mid:
          description: 'Merchant identifier (MID).

            Identifies a specific merchant.


            Enter a value to control spending with a particular merchant.'
          maxLength: 36
          minLength: 1
          type: string
      type: object
    auth_control_request:
      properties:
        active:
          default: true
          type: boolean
        association:
          $ref: '#/components/schemas/spend_control_association'
        end_time:
          format: date-time
          type: string
        merchant_scope:
          $ref: '#/components/schemas/auth_control_merchant_scope'
        name:
          maxLength: 255
          minLength: 0
          type: string
        start_time:
          format: date-time
          type: string
        token:
          maxLength: 36
          minLength: 1
          type: string
      required:
      - name
      type: object
    spend_control_association:
      description: Defines the group of users to which the velocity control applies.
      properties:
        account_template_token:
          maxLength: 36
          minLength: 1
          type: string
        card_product_token:
          description: 'Unique identifier of the card product.


            Pass either `card_product_token` or `user_token`, not both.'
          maxLength: 36
          minLength: 1
          type: string
        user_token:
          description: 'Unique identifier of the cardholder.


            Pass either `card_product_token` or `user_token`, not both.'
          maxLength: 36
          minLength: 1
          type: string
      type: object
    auth_control_response:
      properties:
        active:
          default: true
          type: boolean
        association:
          $ref: '#/components/schemas/spend_control_association'
        end_time:
          format: date-time
          type: string
        merchant_scope:
          $ref: '#/components/schemas/auth_control_merchant_scope'
        name:
          maxLength: 255
          minLength: 0
          type: string
        start_time:
          format: date-time
          type: string
        token:
          maxLength: 36
          minLength: 1
          type: string
      required:
      - name
      type: object
    auth_control_update_request:
      properties:
        active:
          default: true
          type: boolean
        association:
          $ref: '#/components/schemas/spend_control_association'
        end_time:
          format: date-time
          type: string
        merchant_scope:
          $ref: '#/components/schemas/merchant_scope'
        name:
          maxLength: 255
          minLength: 0
          type: string
        start_time:
          format: date-time
          type: string
        token:
          maxLength: 36
          minLength: 1
          type: string
      required:
      - token
      type: object
    auth_control_exempt_mids_update_request:
      properties:
        active:
          default: false
          type: boolean
      type: object
    AuthControlListResponse:
      properties:
        count:
          format: int32
          type: integer
        data:
          items:
            $ref: '#/components/schemas/auth_control_response'
          type: array
        end_index:
          format: int32
          type: integer
        is_more:
          default: false
          type: boolean
        start_index:
          format: int32
          type: integer
      type: object
    auth_control_exempt_mids_response:
      properties:
        active:
          default: false
          type: boolean
        association:
          $ref: '#/components/schemas/spend_control_association'
        created:
          format: date-time
          type: string
        end_time:
          format: date-time
          type: string
        last_updated:
          format: date-time
          type: string
        merchant_group_token:
          description: 36 char max
          maxLength: 36
          minLength: 1
          type: string
        mid:
          maxLength: 36
          minLength: 1
          type: string
        name:
          maxLength: 255
          minLength: 0
          type: string
        start_time:
          format: date-time
          type: string
        token:
          type: string
      required:
      - name
      type: object
    auth_control_merchant_scope:
      properties:
        mcc:
          description: 4 char max
          maxLength: 4
          minLength: 1
          type: string
        mcc_group:
          description: 36 char max
          maxLength: 36
          minLength: 1
          type: string
        merchant_group_token:
          description: 36 char max
          maxLength: 36
          minLength: 1
          type: string
        mid:
          description: 36 char max
          maxLength: 36
          minLength: 1
          type: string
      type: object
    AuthControlExemptMidsListResponse:
      properties:
        count:
          format: int32
          type: integer
        data:
          items:
            $ref: '#/components/schemas/auth_control_exempt_mids_response'
          type: array
        end_index:
          format: int32
          type: integer
        is_more:
          default: false
          type: boolean
        start_index:
          format: int32
          type: integer
      type: object
    auth_control_exempt_mids_request:
      properties:
        association:
          $ref: '#/components/schemas/spend_control_association'
        end_time:
          format: date-time
          type: string
        merchant_group_token:
          description: 36 char max
          maxLength: 36
          minLength: 1
          type: string
        mid:
          maxLength: 36
          minLength: 1
          type: string
        name:
          maxLength: 255
          minLength: 0
          type: string
        start_time:
          format: date-time
          type: string
        token:
          type: string
      required:
      - name
      type: object
  securitySchemes:
    mqAppAndAccessToken:
      scheme: basic
      type: http