# App Engine Admin API . apps . domainMappings

## Instance Methods

Maps a domain to an application. A user must be authorized to administer a domain in order to map it to an application. For a list of available authorized domains, see AuthorizedDomains.ListAuthorizedDomains.

Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.

Gets the specified domain mapping.

Lists the domain mappings on an application.

Retrieves the next page of results.

Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.

### Method Details

`create(appsId, body=None, overrideStrategy=None, x__xgafv=None)`

    Maps a domain to an application. A user must be authorized to administer a domain in order to map it to an application. For a list of available authorized domains, see AuthorizedDomains.ListAuthorizedDomains.

    Args:
      appsId: string, Part of `parent`. Name of the parent Application resource. Example: apps/myapp. (required)
      body: object, The request body.
        The object takes the form of:

    { # A domain serving an App Engine application.
      "name": "A String", # Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly
      "sslSettings": { # SSL configuration for a DomainMapping resource. # SSL configuration for this domain. If unconfigured, this domain will not serve with SSL.
        "certificateId": "A String", # ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support.By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify SslManagementType.MANUAL on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.
        "sslManagementType": "A String", # SSL management type for this domain. If AUTOMATIC, a managed certificate is automatically provisioned. If MANUAL, certificate_id must be manually specified in order to configure SSL for this domain.
        "pendingManagedCertificateId": "A String", # ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly
      },
      "id": "A String", # Relative name of the domain serving the application. Example: example.com.
      "resourceRecords": [ # The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly
        { # A DNS resource record.
          "name": "A String", # Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.
          "type": "A String", # Resource record type. Example: AAAA.
          "rrdata": "A String", # Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).
        },
      ],
    }

      overrideStrategy: string, Whether the domain creation should override any existing mappings for this domain. By default, overrides are rejected.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
        "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "done": True or False, # If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
        "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should be a resource name ending with operations/{unique_id}.
        "error": { # The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each Status message contains three pieces of data: error code, error message, and error details.You can find out more about this error model and how to work with it in the API Design Guide (https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
          "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
          "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
        },
      }

`delete(appsId, domainMappingsId, x__xgafv=None)`

    Deletes the specified domain mapping. A user must be authorized to administer the associated domain in order to delete a DomainMapping resource.

    Args:
      appsId: string, Part of `name`. Name of the resource to delete. Example: apps/myapp/domainMappings/example.com. (required)
      domainMappingsId: string, Part of `name`. See documentation of `appsId`. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
        "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "done": True or False, # If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
        "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should be a resource name ending with operations/{unique_id}.
        "error": { # The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each Status message contains three pieces of data: error code, error message, and error details.You can find out more about this error model and how to work with it in the API Design Guide (https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
          "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
          "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
        },
      }

`get(appsId, domainMappingsId, x__xgafv=None)`

    Gets the specified domain mapping.

    Args:
      appsId: string, Part of `name`. Name of the resource requested. Example: apps/myapp/domainMappings/example.com. (required)
      domainMappingsId: string, Part of `name`. See documentation of `appsId`. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A domain serving an App Engine application.
        "name": "A String", # Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly
        "sslSettings": { # SSL configuration for a DomainMapping resource. # SSL configuration for this domain. If unconfigured, this domain will not serve with SSL.
          "certificateId": "A String", # ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support.By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify SslManagementType.MANUAL on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.
          "sslManagementType": "A String", # SSL management type for this domain. If AUTOMATIC, a managed certificate is automatically provisioned. If MANUAL, certificate_id must be manually specified in order to configure SSL for this domain.
          "pendingManagedCertificateId": "A String", # ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly
        },
        "id": "A String", # Relative name of the domain serving the application. Example: example.com.
        "resourceRecords": [ # The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly
          { # A DNS resource record.
            "name": "A String", # Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.
            "type": "A String", # Resource record type. Example: AAAA.
            "rrdata": "A String", # Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).
          },
        ],
      }

`list(appsId, pageToken=None, pageSize=None, x__xgafv=None)`

    Lists the domain mappings on an application.

    Args:
      appsId: string, Part of `parent`. Name of the parent Application resource. Example: apps/myapp. (required)
      pageToken: string, Continuation token for fetching the next page of results.
      pageSize: integer, Maximum results to return per page.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response message for DomainMappings.ListDomainMappings.
        "domainMappings": [ # The domain mappings for the application.
          { # A domain serving an App Engine application.
            "name": "A String", # Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly
            "sslSettings": { # SSL configuration for a DomainMapping resource. # SSL configuration for this domain. If unconfigured, this domain will not serve with SSL.
              "certificateId": "A String", # ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support.By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify SslManagementType.MANUAL on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.
              "sslManagementType": "A String", # SSL management type for this domain. If AUTOMATIC, a managed certificate is automatically provisioned. If MANUAL, certificate_id must be manually specified in order to configure SSL for this domain.
              "pendingManagedCertificateId": "A String", # ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly
            },
            "id": "A String", # Relative name of the domain serving the application. Example: example.com.
            "resourceRecords": [ # The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly
              { # A DNS resource record.
                "name": "A String", # Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.
                "type": "A String", # Resource record type. Example: AAAA.
                "rrdata": "A String", # Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).
              },
            ],
          },
        ],
        "nextPageToken": "A String", # Continuation token for fetching the next page of results.
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`patch(appsId, domainMappingsId, body=None, updateMask=None, x__xgafv=None)`

    Updates the specified domain mapping. To map an SSL certificate to a domain mapping, update certificate_id to point to an AuthorizedCertificate resource. A user must be authorized to administer the associated domain in order to update a DomainMapping resource.

    Args:
      appsId: string, Part of `name`. Name of the resource to update. Example: apps/myapp/domainMappings/example.com. (required)
      domainMappingsId: string, Part of `name`. See documentation of `appsId`. (required)
      body: object, The request body.
        The object takes the form of:

    { # A domain serving an App Engine application.
      "name": "A String", # Full path to the DomainMapping resource in the API. Example: apps/myapp/domainMapping/example.com.@OutputOnly
      "sslSettings": { # SSL configuration for a DomainMapping resource. # SSL configuration for this domain. If unconfigured, this domain will not serve with SSL.
        "certificateId": "A String", # ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support.By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify SslManagementType.MANUAL on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.
        "sslManagementType": "A String", # SSL management type for this domain. If AUTOMATIC, a managed certificate is automatically provisioned. If MANUAL, certificate_id must be manually specified in order to configure SSL for this domain.
        "pendingManagedCertificateId": "A String", # ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificate_id field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificate_id field with an UpdateDomainMappingRequest.@OutputOnly
      },
      "id": "A String", # Relative name of the domain serving the application. Example: example.com.
      "resourceRecords": [ # The resource records required to configure this domain mapping. These records must be added to the domain's DNS configuration in order to serve the application via this domain mapping.@OutputOnly
        { # A DNS resource record.
          "name": "A String", # Relative name of the object affected by this record. Only applicable for CNAME records. Example: 'www'.
          "type": "A String", # Resource record type. Example: AAAA.
          "rrdata": "A String", # Data for this record. Values vary by record type, as defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).
        },
      ],
    }

      updateMask: string, Standard field mask for the set of fields to be updated.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
        "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "done": True or False, # If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.
        "response": { # The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should be a resource name ending with operations/{unique_id}.
        "error": { # The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). Each Status message contains three pieces of data: error code, error message, and error details.You can find out more about this error model and how to work with it in the API Design Guide (https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
          "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
          "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
        },
      }