Exchange a verification code for an account key

POST /v1/signups/verify

Consumes the code POST /v1/signups sent, creates the account when the address has none, and mints an arc_sk_ key on it: the read scope, the free plan's 1,000 credits a month, no expiry. A wrong, expired, or spent code is 400 signup_code_invalid on param code, naming the attempts left; its unlock action is a new send. Send { "email": "agent@example.com", "code": "482913" }.

Request body

{
  "content": {
    "application/json": {
      "schema": {
        "type": "object",
        "properties": {
          "email": {
            "type": "string",
            "maxLength": 254,
            "description": "The address the code was sent to."
          },
          "code": {
            "type": "string",
            "pattern": "^\\d+$",
            "description": "The six digit code from the email. Ten minutes, five attempts, then a new send is required."
          }
        },
        "required": [
          "email",
          "code"
        ]
      }
    }
  }
}

Responses

201 Account key minted
{
  "description": "Account key minted",
  "headers": {
    "X-Request-Id": {
      "$ref": "#/components/headers/X-Request-Id"
    },
    "X-Arcmira-Version": {
      "$ref": "#/components/headers/X-Arcmira-Version"
    }
  },
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/SignupVerifiedResponse"
      }
    }
  }
}
400 InvalidRequest
{
  "$ref": "#/components/responses/InvalidRequest"
}
404 NotFound
{
  "$ref": "#/components/responses/NotFound"
}
429 Rate limit exceeded. Retry-After carries the wait.
{
  "description": "Rate limit exceeded. Retry-After carries the wait.",
  "headers": {
    "X-Request-Id": {
      "$ref": "#/components/headers/X-Request-Id"
    },
    "X-Arcmira-Version": {
      "$ref": "#/components/headers/X-Arcmira-Version"
    },
    "Retry-After": {
      "$ref": "#/components/headers/Retry-After"
    }
  },
  "content": {
    "application/json": {
      "schema": {
        "$ref": "#/components/schemas/Error"
      }
    }
  }
}
500 ServerError
{
  "$ref": "#/components/responses/ServerError"
}

Operation definition

{
  "tags": [
    "Meta"
  ],
  "operationId": "verify_signup",
  "summary": "Exchange a verification code for an account key",
  "description": "Consumes the code POST /v1/signups sent, creates the account when the address has none, and mints an arc_sk_ key on it: the read scope, the free plan's 1,000 credits a month, no expiry. A wrong, expired, or spent code is 400 signup_code_invalid on param code, naming the attempts left; its unlock action is a new send. Send { \"email\": \"agent@example.com\", \"code\": \"482913\" }.",
  "security": [],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "type": "object",
          "properties": {
            "email": {
              "type": "string",
              "maxLength": 254,
              "description": "The address the code was sent to."
            },
            "code": {
              "type": "string",
              "pattern": "^\\d+$",
              "description": "The six digit code from the email. Ten minutes, five attempts, then a new send is required."
            }
          },
          "required": [
            "email",
            "code"
          ]
        }
      }
    }
  },
  "responses": {
    "201": {
      "description": "Account key minted",
      "headers": {
        "X-Request-Id": {
          "$ref": "#/components/headers/X-Request-Id"
        },
        "X-Arcmira-Version": {
          "$ref": "#/components/headers/X-Arcmira-Version"
        }
      },
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/SignupVerifiedResponse"
          }
        }
      }
    },
    "400": {
      "$ref": "#/components/responses/InvalidRequest"
    },
    "404": {
      "$ref": "#/components/responses/NotFound"
    },
    "429": {
      "description": "Rate limit exceeded. Retry-After carries the wait.",
      "headers": {
        "X-Request-Id": {
          "$ref": "#/components/headers/X-Request-Id"
        },
        "X-Arcmira-Version": {
          "$ref": "#/components/headers/X-Arcmira-Version"
        },
        "Retry-After": {
          "$ref": "#/components/headers/Retry-After"
        }
      },
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      }
    },
    "500": {
      "$ref": "#/components/responses/ServerError"
    }
  }
}