> ## Documentation Index
> Fetch the complete documentation index at: https://docs.go.gbgplc.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Generate access token

> Get an access token to authenticate API requests. If you're unfamiliar with the authentication process, check out the [authentication guide](/docs/developer-integration/execute-customer-journeys/authenticate) for more details.

export const VersionWarningBanner = () => {
  const [latestUrl, setLatestUrl] = useState(null);
  useEffect(() => {
    if (typeof window === "undefined") return;
    const {pathname, hash, search} = window.location;
    if (!pathname.includes("/go-v1/")) return;
    setLatestUrl(`${pathname.replace("/go-v1/", "/go-v2/")}${search}${hash}`);
  }, []);
  if (!latestUrl) return null;
  return <div className="not-prose my-6 rounded-xl border border-amber-500/30 bg-amber-500/10 px-4 py-3 text-sm text-gray-800 dark:text-gray-100">
      ⚠️ You are viewing the <strong>GBG GO v1</strong> documentation.
      <a href={latestUrl} className="ml-2 font-medium underline text-amber-700 dark:text-amber-400 hover:text-amber-800 dark:hover:text-amber-300">
        View the latest version (v2) →
      </a>
    </div>;
};

<VersionWarningBanner />


## OpenAPI

````yaml docs/go-v1/openapi-v1.json POST /as/token.oauth2
openapi: 3.0.3
info:
  title: GBG GO API Reference
  description: >-
    The GBG GO API enables authentication, customer journey execution, task
    management, and tracking verification progress.
  version: 1.0.0
  license:
    name: MIT
servers:
  - url: https://eu.platform.go.gbgplc.com/captain/api
  - url: https://us.platform.go.gbgplc.com/captain/api
  - url: https://au.platform.go.gbgplc.com/captain/api
  - url: https://api.auth.gbgplc.com/as/token.oauth2
security:
  - bearerAuth: []
paths:
  /as/token.oauth2:
    post:
      summary: Generate access token
      description: >-
        Get an access token to authenticate API requests. If you're unfamiliar
        with the authentication process, check out the [authentication
        guide](/docs/developer-integration/execute-customer-journeys/authenticate)
        for more details.
      requestBody:
        content:
          application/x-www-form-urlencoded:
            schema:
              type: object
              properties:
                client_id:
                  type: string
                  description: The client ID assigned to your organization.
                client_secret:
                  type: string
                  description: The client secret assigned to your organization.
                username:
                  type: string
                  description: The username for API authentication.
                password:
                  type: string
                  description: The password for API authentication.
                grant_type:
                  type: string
                  enum:
                    - password
                  description: Must always be set to 'password'.
              required:
                - client_id
                - client_secret
                - username
                - password
                - grant_type
      responses:
        '200':
          description: Successfully retrieved access token.
          content:
            application/json:
              schema:
                type: object
                properties:
                  access_token:
                    type: string
                    description: The access token used for authentication.
                  expires_in:
                    type: integer
                    description: Token expiration time in seconds.
                  token_type:
                    type: string
                    description: The type of token, usually 'Bearer'.
        '400':
          description: Invalid request. Check your credentials.
        '401':
          description: Unauthorized request. Invalid username or password.
      servers:
        - url: https://api.auth.gbgplc.com
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````